The Internet's Simple Network Management Protocol (SNMP) as standardized by the Internet Engineering Task Force (IETF) is typically used by network management programs and network management dashboards to retrieve current status information from remote computer network devices and services such as printers, routers, databases and Web servers. The device managing the network, usually referred to as the managing device, typically includes a network management program that allows the device to send out a GET request to a remote device, which may also be referred to as a managed device. The GET request is formatted to request information on a particular aspect of service provided by the managed device. The managed device responds to the GET request with the status of the service requested by the managing device. For example, a network management program might request the ink level of a remote printer with a GET request. Upon receiving the GET request, the remote printer would respond with the current level of ink in the printer.
SNMP can also be used by network management programs to SET parameters in remote services. For example, a network management program could set the time at which a Web server should terminate an operation.
The details of SNMP and particularly the structure of GET requests, SET commands, and other SNMP operations and messages are further defined in IETF Request For Comment (RFC) 3416, the entire contents of which are hereby incorporated herein by reference.
The operations defined in RFC 3416 include the following:
GET
GET-NEXT
GET-BULK
RESPONSE
SET
INFORM
TRAP
REPORT
In the case of setting a parameter or performing an action on a managed device, it is important that the network management program receive positive acknowledgement that its instructions have been received and successfully carried out. Furthermore, since the managed device may have modest computation capabilities and may be on a relatively slow-speed communication link, the network management program is typically configured to wait for acknowledgement for a considerable length of time (e.g., 5 seconds to 5 minutes, which is relatively long in the computer and computer communications context). While waiting, the network management program is usually not allowed to perform any other actions or send out any other messages to manage other network devices. As can be appreciated by one skilled in the art, this greatly reduces the overall efficiency of network management programs.
Another drawback to current implementations of SNMP is that managing devices utilize a point-to-point method of communication. For example, when a managing device needs to gather data from ten managed devices in the network, the managing device needs to send out ten SNMP messages (i.e., one GET message to each managed device). As can be appreciated by one skilled in the art, the transmission of ten separate messages from the managing device is an inefficient use of already constrained network bandwidth and processing resources.